package lab02.test22;

public class Test22 {
    public static void main(String[] args) {
//      22、给定一个字符串，
//      将字符串中的所有大写字母变成小写字母，数字用0 来代替，
//      其他符号用#代替。
        String result = "Hello, 2017, World!";
        System.out.println(result);
        StringBuffer stringBuffer = new StringBuffer();//为变量保存结果
        //StringBuffer(StringBuilder)的主要StringBuffer(StringBuilder)是append和insert方法，
        //它们是重载的，以便接受任何类型的数据。
        //每个都有效地将给定的数据转换为字符串，然后将该字符串的字符附加或插入字符串构建器。
        //append方法始终在构建器的末尾添加这些字符;
        //insert方法将insert添加到指定点。
        StringBuilder stringBuilder = new StringBuilder();

        //hello##0000##world#
        for (int i = 0;i < result.length();i ++){
            char tmp = result.charAt(i);
            if (tmp >= 'A' && tmp <= 'Z'){
                //System.out.print((char)(tmp + 32));
                stringBuffer.append(tmp);//append追加
            }else if (tmp >= 'a' && tmp <= 'z'){
                //System.out.print(tmp);
                stringBuffer.append(tmp);
            }else if (tmp >= '0' && tmp <='9'){
                //System.out.print("0");
                stringBuffer.append("0");
            }else{
                //System.out.print("#");
                stringBuffer.append("#");
            }
        }

        //stringBuffer.toString()：返回表示此顺序中的数据的字符串。
        //新的String对象被分配并初始化为包含此对象当前表示的字符序列。
        // 然后返回String 。 对此序列的后续更改不影响String的内容。
        System.out.println(stringBuffer.toString());
    }
}
